package com.geovis.emergency.spd.entity.pc.pojo.constant;

/**
 * <p>
 * 应急预案指挥模块-消息通知 常量
 * </p>
 *
 * @author 曾德实
 * @since 2022-04-30
 */
public interface PcMessageConstant {

    /**
     * 前缀
     */
    String PRE = "SOCKET_";

    // 演练主体
    /**
     * 消息类型：新增演练
     */
    String TYPE_DRILL_ADD = PRE + "1001";

    /**
     * 消息类型：修改演练
     */
    String TYPE_DRILL_UPDATE = PRE + "1004";
    /**
     * 消息类型：启动演练
     */
    String TYPE_DRILL_START = PRE + "1002";
    /**
     * 消息类型：演练签到
     */
    String TYPE_DRILL_SIGN = PRE + "1003";

    /**
     * 消息类型：继续演练
     */
    String TYPE_DRILL_CONTINUE = PRE + "1005";
    /**
     * 消息类型：暂停演练
     */
    String TYPE_DRILL_PAUSE = PRE + "1006";
    /**
     * 消息类型：结束演练
     */
    String TYPE_DRILL_END = PRE + "1007";
    /**
     * 消息类型：删除演练
     */
    String TYPE_DRILL_DELETE = PRE + "1008";

    // 演练步骤
    /**
     * 消息类型：事件上报  (移动端、导调端发送，PC端接收)
     */
    String TYPE_REPORT_EVENT = PRE + "2001";
    /**
     * 消息类型：发送事件消息 (导调端发送，PC端接收)
     */
    String TYPE_PUSH_EVENT = PRE + "2002";
    /**
     * 消息类型：更新步骤 (废弃)
     */
    String TYPE_STEP_UPDATE = PRE + "2003";


    // 演练方案
    /**
     * 消息类型：方案提交 (演练端发送，导调端接收)
     */
    String TYPE_PLAN_ADD = PRE + "3001";
    /**
     * 消息类型：方案审核-通过 (导调端发送，演练端接收)
     */
    String TYPE_PLAN_AUDIT_PASS = PRE + "3002";
    /**
     * 消息类型：方案审核-退回 (导调端发送，演练端接收)
     */
    String TYPE_PLAN_AUDIT_BACK = PRE + "3003";
    /**
     * 消息类型：方案执行下发 (导调端审核发送，移动端端接收)
     */
    String TYPE_PLAN_EXE_SIGN = PRE + "3004";
    /**
     * 消息类型：方案执行提交 (移动端发送，演练端接收)
     */
    String TYPE_PLAN_EXE_SUBMIT = PRE + "3005";
    /**
     * 消息类型：方案执行审核-通过 (演练端发送，移动端接收)
     */
    String TYPE_PLAN_EXE_AUDIT_PASS = PRE + "3006";
    /**
     * 消息类型：方案执行审核-退回 (演练端发送，移动端接收)
     */
    String TYPE_PLAN_EXE_AUDIT_BACK = PRE + "3007";
    /**
     * 消息类型：方案更新 （演练端发送，导调端接收）
     */
    String TYPE_PLAN_UPDATE = PRE + "3008";

    // 研发会商
    /**
     * 消息类型：研发会商-发起会议
     */
    String TYPE_DISCUSS_CREATE = PRE + "4001";
    /**
     * 消息类型：研发会商-加入会议
     */
    String TYPE_DISCUSS_JOIN = PRE + "4002";
    /**
     * 消息类型：研发会商-会议邀请
     */
    String TYPE_DISCUSS_INVITATION = PRE + "4003";

    /**
     * 消息类型：研发会商-结束会议
     */
    String TYPE_DISCUSS_FINISH = PRE + "4004";

    // 协同标绘
    /**
     * 消息类型：协同标会-上传消息
     */
    String TYPE_DISCUSS_UP = PRE + "5001";
    /**
     * 消息类型：协同标会-下发消息
     */
    String TYPE_DISCUSS_DOWN = PRE + "5002";

    /**
     * 消息类型：自定义消息
     */
    String TYPE_CUSTOMER = PRE + "10000";

    //发起点名
    /**
     * 通知PC端发起点名
     */
    String TYPE_START_ROLL_CALL_MSG = PRE + "6000";

    /**
     * 通知结束点名
     */
    String TYPE_STOP_ROLL_CALL_MSG = PRE + "6001";
    //点名
    /**
     * 向其他端发起点名消息
     */
    String TYPE_INVITE_ROLL_CALL_MSG = PRE + "6002";

    /**
     * 发送点名反馈消息
     */
    String TYPE_ROLL_CALL_FEEDBACK_MSG = PRE + "6003";
}
